home *** CD-ROM | disk | FTP | other *** search
- 10 D$ = CHR$(4): DIM INSLOT$(7)
- 20 FALSE = 0:TRUE = 1:APPLEIIE = FALSE:L$ = "LANGUAGE CARD":U$ = "USED"
- 30 PRINT CHR$(21)
- 40 REM
- 50 IN = 6:UP = 11:C$ = " "
- 60 HOME
- 70 S1$ = "***************************************"
- 80 S2$ = "* *"
- 90 PRINT S1$: PRINT S2$
- 100 PRINT "* PRODOS BASIC PROGRAMMING EXAMPLES *"
- 110 PRINT S2$
- 120 PRINT "* COPYRIGHT APPLE COMPUTER, INC. 1983 *"
- 130 PRINT S2$: PRINT S1$
- 140 ID$(0) = "USED"
- 150 ID$(1) = "PRINTER"
- 160 ID$(2) = "MOUSE/JOYSTICK"
- 170 ID$(3) = "I/O CARD"
- 180 ID$(4) = "MODEM"
- 190 ID$(5) = "AUDIO CARD"
- 200 ID$(6) = "CLOCK"
- 210 ID$(7) = "MASS STORAGE"
- 220 ID$(8) = "80-COLUMN CARD"
- 230 ID$(9) = "NETWORK CARD"
- 240 REM SLOTS
- 250 REM
- 260 REM MARK ALL SLOTS AS UNUSED
- 270 REM MARK USED SLOTS AS USED
- 280 REM
- 290 SLOTS = PEEK(49049):V = 128
- 300 FOR I = 7 TO 0 STEP -1
- 310 INSLOT$(I) = "EMPTY"
- 320 IF SLOTS > = V THEN INSLOT$(I) = U$:SLOTS = SLOTS -V
- 330 V = V/2
- 340 NEXT I
- 350 REM
- 360 REM FIND THE VARIOUS CARDS
- 370 REM
- 380 FOR SLOT = 1 TO 7
- 390 SADDR = -16384 +256 *SLOT
- 400 IF PEEK(SADDR +23) = 201 AND PEEK(SADDR +55) = 207 AND PEEK(SADDR +76) = 234 THEN INSLOT$(SLOT) = "SILENTYPE": GOTO 460
- 410 IF PEEK(SADDR) = 8 AND PEEK(SADDR +1) = 120 AND PEEK(SADDR +2) = 40 THEN INSLOT$(SLOT) = "CLOCK": GOTO 460
- 420 IF PEEK(SADDR +5) = 24 AND PEEK(SADDR +7) = 56 THEN INSLOT$(SLOT) = "COMMUNICATIONS CARD": GOTO 460
- 430 IF PEEK(SADDR +5) = 56 AND PEEK(SADDR +7) = 24 THEN INSLOT$(SLOT) = "SERIAL CARD"
- 440 IF PEEK(SADDR +5) = 72 AND PEEK(SADDR +7) = 72 THEN INSLOT$(SLOT) = "PARALLEL CARD": GOTO 460
- 450 IF PEEK(SADDR +11) = 1 THEN IF INT( PEEK(SADDR +12)/16) <10 THEN INSLOT$(SLOT) = ID$( INT( PEEK(SADDR +12)/16))
- 460 NEXT SLOT
- 470 REM
- 480 REM IDENTIFY MACHINE TYPE
- 490 REM
- 500 MACHID = PEEK(49048)
- 510 IF MACHID > = 192 THEN TI$ = "APPLE ///":MACHID = MACHID -192: GOTO 550
- 515 IF MACHID > = 180 THEN TI$ = "Apple //c":MACHID = MACHID -128:APPLEIIE = TRUE: GOTO 550
- 520 IF MACHID > = 128 THEN TI$ = "Apple //e":MACHID = MACHID -128:APPLEIIE = TRUE: GOTO 550
- 530 IF MACHID > = 64 THEN TI$ = "APPLE ][ PLUS":MACHID = MACHID -64: GOTO 550
- 540 TI$ = "APPLE ]["
- 550 REM
- 560 REM
- 570 REM GET NAME OF BOOT DISK
- 580 REM PREFIX RETURNS NAME OF LAST ACCESSED DISK
- 590 REM
- 600 PRINT D$;"PREFIX": INPUT "";PREFIX$
- 610 VTAB 8: PRINT "STARTUP DISK: ";PREFIX$
- 620 REM
- 630 REM DETERMINE MEMORY SIZE
- 640 REM
- 650 PRINT : PRINT "YOUR ";TI$;" HAS:": PRINT : HTAB 5
- 660 IF MACHID > = 48 THEN PRINT "128K ";:MACHID = MACHID -48:INSLOT$(0) = L$: GOTO 690
- 670 IF MACHID > = 32 THEN PRINT "64K ";:MACHID = MACHID -32:INSLOT$(0) = L$: GOTO 690
- 680 IF MACHID > = 16 THEN PRINT "48K ";:MACHID = MACHID -16: GOTO 690
- 690 PRINT "OF RANDOM ACCESS MEMORY"
- 700 PRINT : HTAB 5: IF PEEK(57344) = 76 THEN PRINT "APPLESOFT IN ROM": PRINT : GOTO 720
- 710 PRINT "INTEGER BASIC IN ROM": PRINT
- 720 REM
- 730 REM FOR EACH DISK DEVICE
- 740 REM IDENTIFY DRIVE TYPE
- 750 REM
- 760 FOR J = 48946 TO 48946 + PEEK(48945)
- 770 DEVICE = PEEK(J): IF DEVICE > = 128 THEN DEVICE = DEVICE -128
- 780 SLOT = 7
- 790 IF DEVICE > = 16 *SLOT THEN DEVICE = DEVICE -(16 *SLOT): GOTO 820
- 800 SLOT = SLOT -1: IF SLOT >0 GOTO 790
- 810 GOTO 850
- 820 IF DEVICE = 4 THEN INSLOT$(SLOT) = "PROFILE"
- 830 IF DEVICE = 0 THEN INSLOT$(SLOT) = "DISK DRIVE"
- 840 IF DEVICE = 13 THEN INSLOT$(SLOT) = "UNIFILE/DUOFILE"
- 850 NEXT J
- 860 REM
- 870 REM LOOK FOR 80-COLUMN CARD
- 880 REM
- 890 IF MACHID > = 8 THEN MACHID = MACHID -8
- 900 IF MACHID > = 4 THEN MACHID = MACHID -4
- 910 IF MACHID > = 2 THEN INSLOT$(3) = "80-COLUMN CARD"
- 920 REM
- 930 REM PRINT SLOT ASSIGNMENTS
- 940 REM
- 950 FOR I = APPLEIIE TO 7
- 960 PRINT " SLOT ";I;": ";INSLOT$(I): NEXT I
- 970 END